package org.seefly.iprint.entity;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

public class OrderItemExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public OrderItemExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andOrderIdIsNull() {
            addCriterion("order_id is null");
            return (Criteria) this;
        }

        public Criteria andOrderIdIsNotNull() {
            addCriterion("order_id is not null");
            return (Criteria) this;
        }

        public Criteria andOrderIdEqualTo(Integer value) {
            addCriterion("order_id =", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotEqualTo(Integer value) {
            addCriterion("order_id <>", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdGreaterThan(Integer value) {
            addCriterion("order_id >", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("order_id >=", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLessThan(Integer value) {
            addCriterion("order_id <", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLessThanOrEqualTo(Integer value) {
            addCriterion("order_id <=", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdIn(List<Integer> values) {
            addCriterion("order_id in", values, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotIn(List<Integer> values) {
            addCriterion("order_id not in", values, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdBetween(Integer value1, Integer value2) {
            addCriterion("order_id between", value1, value2, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotBetween(Integer value1, Integer value2) {
            addCriterion("order_id not between", value1, value2, "orderId");
            return (Criteria) this;
        }

        public Criteria andCountIsNull() {
            addCriterion("count is null");
            return (Criteria) this;
        }

        public Criteria andCountIsNotNull() {
            addCriterion("count is not null");
            return (Criteria) this;
        }

        public Criteria andCountEqualTo(String value) {
            addCriterion("count =", value, "count");
            return (Criteria) this;
        }

        public Criteria andCountNotEqualTo(String value) {
            addCriterion("count <>", value, "count");
            return (Criteria) this;
        }

        public Criteria andCountGreaterThan(String value) {
            addCriterion("count >", value, "count");
            return (Criteria) this;
        }

        public Criteria andCountGreaterThanOrEqualTo(String value) {
            addCriterion("count >=", value, "count");
            return (Criteria) this;
        }

        public Criteria andCountLessThan(String value) {
            addCriterion("count <", value, "count");
            return (Criteria) this;
        }

        public Criteria andCountLessThanOrEqualTo(String value) {
            addCriterion("count <=", value, "count");
            return (Criteria) this;
        }

        public Criteria andCountLike(String value) {
            addCriterion("count like", value, "count");
            return (Criteria) this;
        }

        public Criteria andCountNotLike(String value) {
            addCriterion("count not like", value, "count");
            return (Criteria) this;
        }

        public Criteria andCountIn(List<String> values) {
            addCriterion("count in", values, "count");
            return (Criteria) this;
        }

        public Criteria andCountNotIn(List<String> values) {
            addCriterion("count not in", values, "count");
            return (Criteria) this;
        }

        public Criteria andCountBetween(String value1, String value2) {
            addCriterion("count between", value1, value2, "count");
            return (Criteria) this;
        }

        public Criteria andCountNotBetween(String value1, String value2) {
            addCriterion("count not between", value1, value2, "count");
            return (Criteria) this;
        }

        public Criteria andTitleIsNull() {
            addCriterion("title is null");
            return (Criteria) this;
        }

        public Criteria andTitleIsNotNull() {
            addCriterion("title is not null");
            return (Criteria) this;
        }

        public Criteria andTitleEqualTo(String value) {
            addCriterion("title =", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotEqualTo(String value) {
            addCriterion("title <>", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleGreaterThan(String value) {
            addCriterion("title >", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleGreaterThanOrEqualTo(String value) {
            addCriterion("title >=", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleLessThan(String value) {
            addCriterion("title <", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleLessThanOrEqualTo(String value) {
            addCriterion("title <=", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleLike(String value) {
            addCriterion("title like", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotLike(String value) {
            addCriterion("title not like", value, "title");
            return (Criteria) this;
        }

        public Criteria andTitleIn(List<String> values) {
            addCriterion("title in", values, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotIn(List<String> values) {
            addCriterion("title not in", values, "title");
            return (Criteria) this;
        }

        public Criteria andTitleBetween(String value1, String value2) {
            addCriterion("title between", value1, value2, "title");
            return (Criteria) this;
        }

        public Criteria andTitleNotBetween(String value1, String value2) {
            addCriterion("title not between", value1, value2, "title");
            return (Criteria) this;
        }

        public Criteria andFileAddrIsNull() {
            addCriterion("file_addr is null");
            return (Criteria) this;
        }

        public Criteria andFileAddrIsNotNull() {
            addCriterion("file_addr is not null");
            return (Criteria) this;
        }

        public Criteria andFileAddrEqualTo(String value) {
            addCriterion("file_addr =", value, "fileAddr");
            return (Criteria) this;
        }

        public Criteria andFileAddrNotEqualTo(String value) {
            addCriterion("file_addr <>", value, "fileAddr");
            return (Criteria) this;
        }

        public Criteria andFileAddrGreaterThan(String value) {
            addCriterion("file_addr >", value, "fileAddr");
            return (Criteria) this;
        }

        public Criteria andFileAddrGreaterThanOrEqualTo(String value) {
            addCriterion("file_addr >=", value, "fileAddr");
            return (Criteria) this;
        }

        public Criteria andFileAddrLessThan(String value) {
            addCriterion("file_addr <", value, "fileAddr");
            return (Criteria) this;
        }

        public Criteria andFileAddrLessThanOrEqualTo(String value) {
            addCriterion("file_addr <=", value, "fileAddr");
            return (Criteria) this;
        }

        public Criteria andFileAddrLike(String value) {
            addCriterion("file_addr like", value, "fileAddr");
            return (Criteria) this;
        }

        public Criteria andFileAddrNotLike(String value) {
            addCriterion("file_addr not like", value, "fileAddr");
            return (Criteria) this;
        }

        public Criteria andFileAddrIn(List<String> values) {
            addCriterion("file_addr in", values, "fileAddr");
            return (Criteria) this;
        }

        public Criteria andFileAddrNotIn(List<String> values) {
            addCriterion("file_addr not in", values, "fileAddr");
            return (Criteria) this;
        }

        public Criteria andFileAddrBetween(String value1, String value2) {
            addCriterion("file_addr between", value1, value2, "fileAddr");
            return (Criteria) this;
        }

        public Criteria andFileAddrNotBetween(String value1, String value2) {
            addCriterion("file_addr not between", value1, value2, "fileAddr");
            return (Criteria) this;
        }

        public Criteria andFileNameIsNull() {
            addCriterion("file_name is null");
            return (Criteria) this;
        }

        public Criteria andFileNameIsNotNull() {
            addCriterion("file_name is not null");
            return (Criteria) this;
        }

        public Criteria andFileNameEqualTo(String value) {
            addCriterion("file_name =", value, "fileName");
            return (Criteria) this;
        }

        public Criteria andFileNameNotEqualTo(String value) {
            addCriterion("file_name <>", value, "fileName");
            return (Criteria) this;
        }

        public Criteria andFileNameGreaterThan(String value) {
            addCriterion("file_name >", value, "fileName");
            return (Criteria) this;
        }

        public Criteria andFileNameGreaterThanOrEqualTo(String value) {
            addCriterion("file_name >=", value, "fileName");
            return (Criteria) this;
        }

        public Criteria andFileNameLessThan(String value) {
            addCriterion("file_name <", value, "fileName");
            return (Criteria) this;
        }

        public Criteria andFileNameLessThanOrEqualTo(String value) {
            addCriterion("file_name <=", value, "fileName");
            return (Criteria) this;
        }

        public Criteria andFileNameLike(String value) {
            addCriterion("file_name like", value, "fileName");
            return (Criteria) this;
        }

        public Criteria andFileNameNotLike(String value) {
            addCriterion("file_name not like", value, "fileName");
            return (Criteria) this;
        }

        public Criteria andFileNameIn(List<String> values) {
            addCriterion("file_name in", values, "fileName");
            return (Criteria) this;
        }

        public Criteria andFileNameNotIn(List<String> values) {
            addCriterion("file_name not in", values, "fileName");
            return (Criteria) this;
        }

        public Criteria andFileNameBetween(String value1, String value2) {
            addCriterion("file_name between", value1, value2, "fileName");
            return (Criteria) this;
        }

        public Criteria andFileNameNotBetween(String value1, String value2) {
            addCriterion("file_name not between", value1, value2, "fileName");
            return (Criteria) this;
        }

        public Criteria andUnitPriceIsNull() {
            addCriterion("unit_price is null");
            return (Criteria) this;
        }

        public Criteria andUnitPriceIsNotNull() {
            addCriterion("unit_price is not null");
            return (Criteria) this;
        }

        public Criteria andUnitPriceEqualTo(BigDecimal value) {
            addCriterion("unit_price =", value, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceNotEqualTo(BigDecimal value) {
            addCriterion("unit_price <>", value, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceGreaterThan(BigDecimal value) {
            addCriterion("unit_price >", value, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("unit_price >=", value, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceLessThan(BigDecimal value) {
            addCriterion("unit_price <", value, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("unit_price <=", value, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceIn(List<BigDecimal> values) {
            addCriterion("unit_price in", values, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceNotIn(List<BigDecimal> values) {
            addCriterion("unit_price not in", values, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("unit_price between", value1, value2, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("unit_price not between", value1, value2, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andTotalIsNull() {
            addCriterion("total is null");
            return (Criteria) this;
        }

        public Criteria andTotalIsNotNull() {
            addCriterion("total is not null");
            return (Criteria) this;
        }

        public Criteria andTotalEqualTo(BigDecimal value) {
            addCriterion("total =", value, "total");
            return (Criteria) this;
        }

        public Criteria andTotalNotEqualTo(BigDecimal value) {
            addCriterion("total <>", value, "total");
            return (Criteria) this;
        }

        public Criteria andTotalGreaterThan(BigDecimal value) {
            addCriterion("total >", value, "total");
            return (Criteria) this;
        }

        public Criteria andTotalGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("total >=", value, "total");
            return (Criteria) this;
        }

        public Criteria andTotalLessThan(BigDecimal value) {
            addCriterion("total <", value, "total");
            return (Criteria) this;
        }

        public Criteria andTotalLessThanOrEqualTo(BigDecimal value) {
            addCriterion("total <=", value, "total");
            return (Criteria) this;
        }

        public Criteria andTotalIn(List<BigDecimal> values) {
            addCriterion("total in", values, "total");
            return (Criteria) this;
        }

        public Criteria andTotalNotIn(List<BigDecimal> values) {
            addCriterion("total not in", values, "total");
            return (Criteria) this;
        }

        public Criteria andTotalBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("total between", value1, value2, "total");
            return (Criteria) this;
        }

        public Criteria andTotalNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("total not between", value1, value2, "total");
            return (Criteria) this;
        }

        public Criteria andPageTypeIsNull() {
            addCriterion("page_type is null");
            return (Criteria) this;
        }

        public Criteria andPageTypeIsNotNull() {
            addCriterion("page_type is not null");
            return (Criteria) this;
        }

        public Criteria andPageTypeEqualTo(String value) {
            addCriterion("page_type =", value, "pageType");
            return (Criteria) this;
        }

        public Criteria andPageTypeNotEqualTo(String value) {
            addCriterion("page_type <>", value, "pageType");
            return (Criteria) this;
        }

        public Criteria andPageTypeGreaterThan(String value) {
            addCriterion("page_type >", value, "pageType");
            return (Criteria) this;
        }

        public Criteria andPageTypeGreaterThanOrEqualTo(String value) {
            addCriterion("page_type >=", value, "pageType");
            return (Criteria) this;
        }

        public Criteria andPageTypeLessThan(String value) {
            addCriterion("page_type <", value, "pageType");
            return (Criteria) this;
        }

        public Criteria andPageTypeLessThanOrEqualTo(String value) {
            addCriterion("page_type <=", value, "pageType");
            return (Criteria) this;
        }

        public Criteria andPageTypeLike(String value) {
            addCriterion("page_type like", value, "pageType");
            return (Criteria) this;
        }

        public Criteria andPageTypeNotLike(String value) {
            addCriterion("page_type not like", value, "pageType");
            return (Criteria) this;
        }

        public Criteria andPageTypeIn(List<String> values) {
            addCriterion("page_type in", values, "pageType");
            return (Criteria) this;
        }

        public Criteria andPageTypeNotIn(List<String> values) {
            addCriterion("page_type not in", values, "pageType");
            return (Criteria) this;
        }

        public Criteria andPageTypeBetween(String value1, String value2) {
            addCriterion("page_type between", value1, value2, "pageType");
            return (Criteria) this;
        }

        public Criteria andPageTypeNotBetween(String value1, String value2) {
            addCriterion("page_type not between", value1, value2, "pageType");
            return (Criteria) this;
        }

        public Criteria andPageSizeIsNull() {
            addCriterion("page_size is null");
            return (Criteria) this;
        }

        public Criteria andPageSizeIsNotNull() {
            addCriterion("page_size is not null");
            return (Criteria) this;
        }

        public Criteria andPageSizeEqualTo(String value) {
            addCriterion("page_size =", value, "pageSize");
            return (Criteria) this;
        }

        public Criteria andPageSizeNotEqualTo(String value) {
            addCriterion("page_size <>", value, "pageSize");
            return (Criteria) this;
        }

        public Criteria andPageSizeGreaterThan(String value) {
            addCriterion("page_size >", value, "pageSize");
            return (Criteria) this;
        }

        public Criteria andPageSizeGreaterThanOrEqualTo(String value) {
            addCriterion("page_size >=", value, "pageSize");
            return (Criteria) this;
        }

        public Criteria andPageSizeLessThan(String value) {
            addCriterion("page_size <", value, "pageSize");
            return (Criteria) this;
        }

        public Criteria andPageSizeLessThanOrEqualTo(String value) {
            addCriterion("page_size <=", value, "pageSize");
            return (Criteria) this;
        }

        public Criteria andPageSizeLike(String value) {
            addCriterion("page_size like", value, "pageSize");
            return (Criteria) this;
        }

        public Criteria andPageSizeNotLike(String value) {
            addCriterion("page_size not like", value, "pageSize");
            return (Criteria) this;
        }

        public Criteria andPageSizeIn(List<String> values) {
            addCriterion("page_size in", values, "pageSize");
            return (Criteria) this;
        }

        public Criteria andPageSizeNotIn(List<String> values) {
            addCriterion("page_size not in", values, "pageSize");
            return (Criteria) this;
        }

        public Criteria andPageSizeBetween(String value1, String value2) {
            addCriterion("page_size between", value1, value2, "pageSize");
            return (Criteria) this;
        }

        public Criteria andPageSizeNotBetween(String value1, String value2) {
            addCriterion("page_size not between", value1, value2, "pageSize");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleIsNull() {
            addCriterion("single_double is null");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleIsNotNull() {
            addCriterion("single_double is not null");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleEqualTo(String value) {
            addCriterion("single_double =", value, "singleDouble");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleNotEqualTo(String value) {
            addCriterion("single_double <>", value, "singleDouble");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleGreaterThan(String value) {
            addCriterion("single_double >", value, "singleDouble");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleGreaterThanOrEqualTo(String value) {
            addCriterion("single_double >=", value, "singleDouble");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleLessThan(String value) {
            addCriterion("single_double <", value, "singleDouble");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleLessThanOrEqualTo(String value) {
            addCriterion("single_double <=", value, "singleDouble");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleLike(String value) {
            addCriterion("single_double like", value, "singleDouble");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleNotLike(String value) {
            addCriterion("single_double not like", value, "singleDouble");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleIn(List<String> values) {
            addCriterion("single_double in", values, "singleDouble");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleNotIn(List<String> values) {
            addCriterion("single_double not in", values, "singleDouble");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleBetween(String value1, String value2) {
            addCriterion("single_double between", value1, value2, "singleDouble");
            return (Criteria) this;
        }

        public Criteria andSingleDoubleNotBetween(String value1, String value2) {
            addCriterion("single_double not between", value1, value2, "singleDouble");
            return (Criteria) this;
        }

        public Criteria andPageCountIsNull() {
            addCriterion("page_count is null");
            return (Criteria) this;
        }

        public Criteria andPageCountIsNotNull() {
            addCriterion("page_count is not null");
            return (Criteria) this;
        }

        public Criteria andPageCountEqualTo(String value) {
            addCriterion("page_count =", value, "pageCount");
            return (Criteria) this;
        }

        public Criteria andPageCountNotEqualTo(String value) {
            addCriterion("page_count <>", value, "pageCount");
            return (Criteria) this;
        }

        public Criteria andPageCountGreaterThan(String value) {
            addCriterion("page_count >", value, "pageCount");
            return (Criteria) this;
        }

        public Criteria andPageCountGreaterThanOrEqualTo(String value) {
            addCriterion("page_count >=", value, "pageCount");
            return (Criteria) this;
        }

        public Criteria andPageCountLessThan(String value) {
            addCriterion("page_count <", value, "pageCount");
            return (Criteria) this;
        }

        public Criteria andPageCountLessThanOrEqualTo(String value) {
            addCriterion("page_count <=", value, "pageCount");
            return (Criteria) this;
        }

        public Criteria andPageCountLike(String value) {
            addCriterion("page_count like", value, "pageCount");
            return (Criteria) this;
        }

        public Criteria andPageCountNotLike(String value) {
            addCriterion("page_count not like", value, "pageCount");
            return (Criteria) this;
        }

        public Criteria andPageCountIn(List<String> values) {
            addCriterion("page_count in", values, "pageCount");
            return (Criteria) this;
        }

        public Criteria andPageCountNotIn(List<String> values) {
            addCriterion("page_count not in", values, "pageCount");
            return (Criteria) this;
        }

        public Criteria andPageCountBetween(String value1, String value2) {
            addCriterion("page_count between", value1, value2, "pageCount");
            return (Criteria) this;
        }

        public Criteria andPageCountNotBetween(String value1, String value2) {
            addCriterion("page_count not between", value1, value2, "pageCount");
            return (Criteria) this;
        }

        public Criteria andPagePriceIsNull() {
            addCriterion("page_price is null");
            return (Criteria) this;
        }

        public Criteria andPagePriceIsNotNull() {
            addCriterion("page_price is not null");
            return (Criteria) this;
        }

        public Criteria andPagePriceEqualTo(BigDecimal value) {
            addCriterion("page_price =", value, "pagePrice");
            return (Criteria) this;
        }

        public Criteria andPagePriceNotEqualTo(BigDecimal value) {
            addCriterion("page_price <>", value, "pagePrice");
            return (Criteria) this;
        }

        public Criteria andPagePriceGreaterThan(BigDecimal value) {
            addCriterion("page_price >", value, "pagePrice");
            return (Criteria) this;
        }

        public Criteria andPagePriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("page_price >=", value, "pagePrice");
            return (Criteria) this;
        }

        public Criteria andPagePriceLessThan(BigDecimal value) {
            addCriterion("page_price <", value, "pagePrice");
            return (Criteria) this;
        }

        public Criteria andPagePriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("page_price <=", value, "pagePrice");
            return (Criteria) this;
        }

        public Criteria andPagePriceIn(List<BigDecimal> values) {
            addCriterion("page_price in", values, "pagePrice");
            return (Criteria) this;
        }

        public Criteria andPagePriceNotIn(List<BigDecimal> values) {
            addCriterion("page_price not in", values, "pagePrice");
            return (Criteria) this;
        }

        public Criteria andPagePriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("page_price between", value1, value2, "pagePrice");
            return (Criteria) this;
        }

        public Criteria andPagePriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("page_price not between", value1, value2, "pagePrice");
            return (Criteria) this;
        }

        public Criteria andPrintTypeIsNull() {
            addCriterion("print_type is null");
            return (Criteria) this;
        }

        public Criteria andPrintTypeIsNotNull() {
            addCriterion("print_type is not null");
            return (Criteria) this;
        }

        public Criteria andPrintTypeEqualTo(String value) {
            addCriterion("print_type =", value, "printType");
            return (Criteria) this;
        }

        public Criteria andPrintTypeNotEqualTo(String value) {
            addCriterion("print_type <>", value, "printType");
            return (Criteria) this;
        }

        public Criteria andPrintTypeGreaterThan(String value) {
            addCriterion("print_type >", value, "printType");
            return (Criteria) this;
        }

        public Criteria andPrintTypeGreaterThanOrEqualTo(String value) {
            addCriterion("print_type >=", value, "printType");
            return (Criteria) this;
        }

        public Criteria andPrintTypeLessThan(String value) {
            addCriterion("print_type <", value, "printType");
            return (Criteria) this;
        }

        public Criteria andPrintTypeLessThanOrEqualTo(String value) {
            addCriterion("print_type <=", value, "printType");
            return (Criteria) this;
        }

        public Criteria andPrintTypeLike(String value) {
            addCriterion("print_type like", value, "printType");
            return (Criteria) this;
        }

        public Criteria andPrintTypeNotLike(String value) {
            addCriterion("print_type not like", value, "printType");
            return (Criteria) this;
        }

        public Criteria andPrintTypeIn(List<String> values) {
            addCriterion("print_type in", values, "printType");
            return (Criteria) this;
        }

        public Criteria andPrintTypeNotIn(List<String> values) {
            addCriterion("print_type not in", values, "printType");
            return (Criteria) this;
        }

        public Criteria andPrintTypeBetween(String value1, String value2) {
            addCriterion("print_type between", value1, value2, "printType");
            return (Criteria) this;
        }

        public Criteria andPrintTypeNotBetween(String value1, String value2) {
            addCriterion("print_type not between", value1, value2, "printType");
            return (Criteria) this;
        }

        public Criteria andMarginIsNull() {
            addCriterion("margin is null");
            return (Criteria) this;
        }

        public Criteria andMarginIsNotNull() {
            addCriterion("margin is not null");
            return (Criteria) this;
        }

        public Criteria andMarginEqualTo(String value) {
            addCriterion("margin =", value, "margin");
            return (Criteria) this;
        }

        public Criteria andMarginNotEqualTo(String value) {
            addCriterion("margin <>", value, "margin");
            return (Criteria) this;
        }

        public Criteria andMarginGreaterThan(String value) {
            addCriterion("margin >", value, "margin");
            return (Criteria) this;
        }

        public Criteria andMarginGreaterThanOrEqualTo(String value) {
            addCriterion("margin >=", value, "margin");
            return (Criteria) this;
        }

        public Criteria andMarginLessThan(String value) {
            addCriterion("margin <", value, "margin");
            return (Criteria) this;
        }

        public Criteria andMarginLessThanOrEqualTo(String value) {
            addCriterion("margin <=", value, "margin");
            return (Criteria) this;
        }

        public Criteria andMarginLike(String value) {
            addCriterion("margin like", value, "margin");
            return (Criteria) this;
        }

        public Criteria andMarginNotLike(String value) {
            addCriterion("margin not like", value, "margin");
            return (Criteria) this;
        }

        public Criteria andMarginIn(List<String> values) {
            addCriterion("margin in", values, "margin");
            return (Criteria) this;
        }

        public Criteria andMarginNotIn(List<String> values) {
            addCriterion("margin not in", values, "margin");
            return (Criteria) this;
        }

        public Criteria andMarginBetween(String value1, String value2) {
            addCriterion("margin between", value1, value2, "margin");
            return (Criteria) this;
        }

        public Criteria andMarginNotBetween(String value1, String value2) {
            addCriterion("margin not between", value1, value2, "margin");
            return (Criteria) this;
        }

        public Criteria andCraftworkIsNull() {
            addCriterion("craftwork is null");
            return (Criteria) this;
        }

        public Criteria andCraftworkIsNotNull() {
            addCriterion("craftwork is not null");
            return (Criteria) this;
        }

        public Criteria andCraftworkEqualTo(String value) {
            addCriterion("craftwork =", value, "craftwork");
            return (Criteria) this;
        }

        public Criteria andCraftworkNotEqualTo(String value) {
            addCriterion("craftwork <>", value, "craftwork");
            return (Criteria) this;
        }

        public Criteria andCraftworkGreaterThan(String value) {
            addCriterion("craftwork >", value, "craftwork");
            return (Criteria) this;
        }

        public Criteria andCraftworkGreaterThanOrEqualTo(String value) {
            addCriterion("craftwork >=", value, "craftwork");
            return (Criteria) this;
        }

        public Criteria andCraftworkLessThan(String value) {
            addCriterion("craftwork <", value, "craftwork");
            return (Criteria) this;
        }

        public Criteria andCraftworkLessThanOrEqualTo(String value) {
            addCriterion("craftwork <=", value, "craftwork");
            return (Criteria) this;
        }

        public Criteria andCraftworkLike(String value) {
            addCriterion("craftwork like", value, "craftwork");
            return (Criteria) this;
        }

        public Criteria andCraftworkNotLike(String value) {
            addCriterion("craftwork not like", value, "craftwork");
            return (Criteria) this;
        }

        public Criteria andCraftworkIn(List<String> values) {
            addCriterion("craftwork in", values, "craftwork");
            return (Criteria) this;
        }

        public Criteria andCraftworkNotIn(List<String> values) {
            addCriterion("craftwork not in", values, "craftwork");
            return (Criteria) this;
        }

        public Criteria andCraftworkBetween(String value1, String value2) {
            addCriterion("craftwork between", value1, value2, "craftwork");
            return (Criteria) this;
        }

        public Criteria andCraftworkNotBetween(String value1, String value2) {
            addCriterion("craftwork not between", value1, value2, "craftwork");
            return (Criteria) this;
        }

        public Criteria andChangeBgcIsNull() {
            addCriterion("change_bgc is null");
            return (Criteria) this;
        }

        public Criteria andChangeBgcIsNotNull() {
            addCriterion("change_bgc is not null");
            return (Criteria) this;
        }

        public Criteria andChangeBgcEqualTo(String value) {
            addCriterion("change_bgc =", value, "changeBgc");
            return (Criteria) this;
        }

        public Criteria andChangeBgcNotEqualTo(String value) {
            addCriterion("change_bgc <>", value, "changeBgc");
            return (Criteria) this;
        }

        public Criteria andChangeBgcGreaterThan(String value) {
            addCriterion("change_bgc >", value, "changeBgc");
            return (Criteria) this;
        }

        public Criteria andChangeBgcGreaterThanOrEqualTo(String value) {
            addCriterion("change_bgc >=", value, "changeBgc");
            return (Criteria) this;
        }

        public Criteria andChangeBgcLessThan(String value) {
            addCriterion("change_bgc <", value, "changeBgc");
            return (Criteria) this;
        }

        public Criteria andChangeBgcLessThanOrEqualTo(String value) {
            addCriterion("change_bgc <=", value, "changeBgc");
            return (Criteria) this;
        }

        public Criteria andChangeBgcLike(String value) {
            addCriterion("change_bgc like", value, "changeBgc");
            return (Criteria) this;
        }

        public Criteria andChangeBgcNotLike(String value) {
            addCriterion("change_bgc not like", value, "changeBgc");
            return (Criteria) this;
        }

        public Criteria andChangeBgcIn(List<String> values) {
            addCriterion("change_bgc in", values, "changeBgc");
            return (Criteria) this;
        }

        public Criteria andChangeBgcNotIn(List<String> values) {
            addCriterion("change_bgc not in", values, "changeBgc");
            return (Criteria) this;
        }

        public Criteria andChangeBgcBetween(String value1, String value2) {
            addCriterion("change_bgc between", value1, value2, "changeBgc");
            return (Criteria) this;
        }

        public Criteria andChangeBgcNotBetween(String value1, String value2) {
            addCriterion("change_bgc not between", value1, value2, "changeBgc");
            return (Criteria) this;
        }

        public Criteria andPageWeightIsNull() {
            addCriterion("page_weight is null");
            return (Criteria) this;
        }

        public Criteria andPageWeightIsNotNull() {
            addCriterion("page_weight is not null");
            return (Criteria) this;
        }

        public Criteria andPageWeightEqualTo(String value) {
            addCriterion("page_weight =", value, "pageWeight");
            return (Criteria) this;
        }

        public Criteria andPageWeightNotEqualTo(String value) {
            addCriterion("page_weight <>", value, "pageWeight");
            return (Criteria) this;
        }

        public Criteria andPageWeightGreaterThan(String value) {
            addCriterion("page_weight >", value, "pageWeight");
            return (Criteria) this;
        }

        public Criteria andPageWeightGreaterThanOrEqualTo(String value) {
            addCriterion("page_weight >=", value, "pageWeight");
            return (Criteria) this;
        }

        public Criteria andPageWeightLessThan(String value) {
            addCriterion("page_weight <", value, "pageWeight");
            return (Criteria) this;
        }

        public Criteria andPageWeightLessThanOrEqualTo(String value) {
            addCriterion("page_weight <=", value, "pageWeight");
            return (Criteria) this;
        }

        public Criteria andPageWeightLike(String value) {
            addCriterion("page_weight like", value, "pageWeight");
            return (Criteria) this;
        }

        public Criteria andPageWeightNotLike(String value) {
            addCriterion("page_weight not like", value, "pageWeight");
            return (Criteria) this;
        }

        public Criteria andPageWeightIn(List<String> values) {
            addCriterion("page_weight in", values, "pageWeight");
            return (Criteria) this;
        }

        public Criteria andPageWeightNotIn(List<String> values) {
            addCriterion("page_weight not in", values, "pageWeight");
            return (Criteria) this;
        }

        public Criteria andPageWeightBetween(String value1, String value2) {
            addCriterion("page_weight between", value1, value2, "pageWeight");
            return (Criteria) this;
        }

        public Criteria andPageWeightNotBetween(String value1, String value2) {
            addCriterion("page_weight not between", value1, value2, "pageWeight");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}